#include <stdio.h>
#include <sys/wait.h>
#include <unistd.h>
#include <stdlib.h>
int main()
{
  int count =5;
  while(count--)
  {
    printf("我是父进程我还活着 我还剩%d秒 我的pid是%d\n",count,getpid());
    sleep(1);
  }
  pid_t child = fork();
  if(child == 0)
  {
    printf("我是子进程 我的pid是%d 我的ppid是%d\n",getpid(),getppid());
    fflush(stdout);
    sleep(5);
    printf("我要结束程序了!");
    exit(1);
  }
  int status = 0;
  waitpid(child,&status,0);
  printf("我是父进程 我的收到了子程序的退出码%d 这是信号码%d 这是程序是否正常结束码%d\n",WEXITSTATUS(status),
  WIFSIGNALED(status),WIFEXITED(status));
  return 0;
}
